package com.joysuch.wwyt.bp.service;

import com.joysuch.wwyt.bp.bean.BpInspectPlanSearchBean;
import com.joysuch.wwyt.bp.bean.inspect.BpInspectPlanBean;
import com.joysuch.wwyt.bp.bean.inspect.BpInspectTaskQueryBean;
import com.joysuch.wwyt.bp.entity.inspect.BpInspectPlan;
import com.joysuch.wwyt.core.common.ajax.ResultBean;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

public interface BpInspectPlanService {

    ResultBean save(BpInspectPlanBean bean);

    void deleteById(Long Id);

    Page<BpInspectPlan> list(Pageable pageable, BpInspectPlanSearchBean searchBean);

    BpInspectPlan getById(Long id);

    ResultBean openOrCloseById(Long id, int flag);

    ResultBean checkPath(Long id);

    ResultBean inspectManageNeedFinish(Pageable pageable);

    ResultBean inspectManageAlreadyFinish(Pageable pageable);

    ResultBean inspectManageUnFinish(Pageable pageable);

    ResultBean appInit();

    ResultBean startCheck(Long id);

    ResultBean relatedOrNot(Long pointId);

    ResultBean checkFinish(Long appPlanTaskId, Integer uncheckFlag, Long recordId);

    ResultBean appGetById(Long id, Long appTaskId);

    ResultBean appNeedDo(Pageable pageable);

    void initAllTask();

    ResultBean appGetByPlanId(Long planId);

    ResultBean taskQuery(BpInspectTaskQueryBean bean);

    ResultBean getTaskList(String flag);
}
